1. Technical Field
The present invention relates generally to resource allocation and specifically to a method and system for determining the correct amount of resources to allocate to products. Still more particularly, the present invention relates to a method and system for enabling autonomic determination of correct levels of product support resources to allocate to new/developing products.
2. Description of the Related Art
Consumers of new and existing products typically rely on the company creating/releasing the product to provide technical and other support for implementing and maintaining the product. As new products, or new releases of existing products, are brought to market, it is therefore necessary to ensure that adequate support infrastructure (technical and otherwise) is put in place to handle consumer needs for support of the product. This infrastructure typically includes problem reporting/resolution, technical sales support (e.g., skills, demos, etc), education, and consulting services. Because most companies produce multiple products and or multiple versions of a single product, each of these support areas typically handle requests from multiple consumers of different products. The source company thus needs to be able to predict the amount of resources that will be needed for a particular product release. When, as in most instances, there are limited support resources available, the company must further determine how to allocate the available resources across multiple products and multiple requests. This determination may require implementing a prioritization scheme for handling incoming requests concerning multiple different products (or multiple versions of the same product).
Existing approaches to this problem rely mainly on subjective assessments of the amount and type of resources that will be required to support a release. These existing approaches have not included empirical measurements that define the environment of a release, which in turn, affects the types and amount of support resources that are actually needed. Thus, the existing approaches typically results in ineffective allocation and/or utilization of resources, whereby some products do not have the amount of support needed, while other products have more support than is required.
Some development has occurred in the area of prioritizing resource allocation and in automating business processes. However, current efforts to automate business processes have not yet addressed the allocation of support resources. Current resource allocation approaches do not base allocations upon algorithmically determined product and target market requirements. For example, one approach utilizes the perceived or determined importance of the product to determine the amount of resources to allocate to support the product. This approach yields incorrect results because, while a product may be key (important) to a business strategy, the product may actually require less support resources than a new (less important) product in an emerging market, particularly if the product has been in the market for some time.
Also, existing Project Management approaches attempt to allocate resources based on optimization of key business goals. However, while the key business goal is a factor that needs to be considered, the key business goal is not sufficient by itself, as that goal fails to consider the state of the current support infrastructure (or lack of one) and what may be needed to provide adequate support.
Several online examples of currently available support analysis implementations are listed below. These include world-wide web (www) sites:                “umt.com/site/index.php?page=250,” which illustrates a product that assigns resources based on contribution to a business strategy;        “solver.com/tutorial.htm,” which illustrates a linear optimization tool, but provides no mechanism/model for how to assign support resources;        “computerworld.com/managementtopicslmanagementJstory/O,10801,69129,00.html,” which discusses the value of portfolio management and prioritizing projects, and suggests that they be prioritized by business strategies; and        “smeal.psu.edu/isbm/web/4thNewProdNuggets2001.pdf,” which discusses the importance of selecting the right projects to work on. This method does not address allocation of support resources for those projects.        
Also, there are several patents and/or patent submissions that describe other methods of allocating resources. For example:                U.S. Patent Application No. 2003/0033184 describes detailed allocations of specific resources to specific tasks and includes looking at historical data for estimates of future costs at a detailed task level. This submission does not account for market maturity, as it is not an important factor in the detailed, task level assignment being addressed;        U.S. Pat. No. 6,675,149 describes allocating information systems (IS) skills (i.e., programmers, architects) to a list of projects, where the prioritization is based on company objectives, and the requirements of each projects. The priority that results is the one that best utilizes the IS skills to best meet the company's objectives rather than actual support requirements; and        U.S. Pat. No. 5,963,911 describes a way to optimize cost when assigning a set of resources to a set of jobs that need to be performed.        
In addition to the above, additional development has occurred with defining new approaches and systems to perform day-to-day business processes. These systems attempt to eliminate/reduce as much of the manual efforts required by automating as much of the analysis as possible. None of the above implementations address allocation of support resources as a computation that takes into account maturity of the market being targeted, complexity of the product supported, and historical data to better estimate future resource needs and prioritizing the use of resources. Also, none of the methods provide a mechanism for automated determination and assignment of support resources.
The present invention thus recognizes that it would be desirable to have a computational process and mechanism for allocating support resources based on a combination of product and market requirements and historical data on resources used by similar products in similar markets. The invention further realizes that a process that is automated so that a product can “self-provision” or request these resource requirements as part of a development and go-to-market process would be a welcomed improvement. These and other benefits are provided by the invention described herein.